package com.zhan.rkforum.service;

import com.zhan.rkforum.bean.Message;

import java.util.List;

public interface MessageService {

    List<Message> selectConversationByPage( int userId, int offset, int limit);

    List<Message> selectLettersByPage(String conversationId, int offset, int limit);

    int selectConversationCount(int userId);

    int selectUnreadMessageCount(int userId, String conversationId);

    int selectLetterCount(String conversationId);

    void updateMessagesStatus(List<Integer> ids, int status);

    void addMessage(int fromId, int toId, String content);
    //方法重载
    void addMessage(Message message);

    /**
     * 通过id和主题查询通知
     *
     * @param userId 用户id
     * @param topic  主题
     * @return {@link Message}
     */
    Message findNoticeById(int userId, String topic);

    /**
     * 查询某用户主题通知的总数
     *
     * @param userId 用户id
     * @param topic  主题
     * @return int
     */
    int findTopicNoticeCount(int userId, String topic);

    /**
     * 查询某用户未阅读数量
     *
     * @param userId 用户id
     * @param topic  主题
     * @return int
     */
    int unReadTopicNoticeCount(int userId, String topic);

    List<Message> findMessageList(int userId, String topic, int offset, int limit);



}
